package app

/*
微服务框架：
	抽取出公共的服务，可以让我们快速的启动项目，当我们需要某些功能的时候通过配置文件或者具体的实现接口
	微服务框架抽取出来的是业务无关的功能，很难做到和具体业务相关

	微服务的技术选型：
		http - gin
		rpc - gRPC

	我的微服务启动的时候应该做什么：
		1. 处理rpc服务的启动
			组件
		2. 处理web服务的启动
			组件
			recovery拦截器
		3. 如果我们希望我们的系统可以被监控 - pprof 接口
		4. 自动启动metrics 的接口
		5. 可以自动注册health接口(gRPC, http)
		6. app最好不要和gin以及grpc强绑定
		7. 完成自动服务注册(可选)
		8. 出来优雅退出
		9. 启动过程中的日志打印
		10. go-zero中处理的信号 - 某些信号产生后在退出前会写入当前的进行的信息(信号量应该由使用者确定)
	简单的启动服务的时候有很多细节需要考虑
*/
